<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: src/ir_Goodweather.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IRremoteESP8266
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">ir_Goodweather.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="ir__Goodweather_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright 2019 ribeirodanielf</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Copyright 2019 David Conran</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// Supports:</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">//   Brand: Goodweather,  Model: ZH/JT-03 remote</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifndef IR_GOODWEATHER_H_</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#define IR_GOODWEATHER_H_</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define __STDC_LIMIT_MACROS</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a>&quot;</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRsend_8h.html">IRsend.h</a>&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#ifdef UNIT_TEST</span></div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;IRsend_test.h&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html">   26</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionGoodweatherProtocol.html">GoodweatherProtocol</a> {</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#aea5a3a02cea21af0f42b63b7145709c9">   27</a></span>&#160;  uint64_t <a class="code" href="unionGoodweatherProtocol.html#aea5a3a02cea21af0f42b63b7145709c9">raw</a>;  </div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="comment">// Byte 0</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a58bfae03b0e7faeb4a5eb2baa7027499">   30</a></span>&#160;    uint8_t :8;</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="comment">// Byte 1</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a845565af7661af0c05290a7ce039f8e2">   32</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a845565af7661af0c05290a7ce039f8e2">Light</a> :1;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#af377b40f40c2182c39892322d48b6e41">   33</a></span>&#160;    uint8_t       :2;</div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a007f6dd38f4e7137d08278355941885d">   34</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a007f6dd38f4e7137d08278355941885d">Turbo</a> :1;</div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#af9191479578e5541782ab08dca536cd8">   35</a></span>&#160;    uint8_t       :0;</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">// Byte 2</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#acaa336e2b9915da4dfb51e4738af9265">   37</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#acaa336e2b9915da4dfb51e4738af9265">Command</a> :4;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#ac9e781a9b5d7f9631c0b4696bca0bcef">   38</a></span>&#160;    uint8_t         :0;</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="comment">// Byte 3</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#ab5b363c97de0b9ea362335914202aa5d">   40</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#ab5b363c97de0b9ea362335914202aa5d">Sleep</a>   :1;</div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#ac3a2cf92410edd8ad11550f6aa051bac">   41</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#ac3a2cf92410edd8ad11550f6aa051bac">Power</a>   :1;</div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a0a9be72f6b174f5bc4f4082f3afd93b1">   42</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a0a9be72f6b174f5bc4f4082f3afd93b1">Swing</a>   :2;</div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a7b876552a27a7a9bf84b1009f7b12f7a">   43</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a7b876552a27a7a9bf84b1009f7b12f7a">AirFlow</a> :1;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a7dd02188438a4e2b37c70a2b3913e550">   44</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a7dd02188438a4e2b37c70a2b3913e550">Fan</a>     :2;</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a15507e180c97e420b5d6fe3c0bc61fb8">   45</a></span>&#160;    uint8_t         :0;</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="comment">// Byte 4</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a52cc284981b27dab58eb8c6ccce164aa">   47</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a52cc284981b27dab58eb8c6ccce164aa">Temp</a>  :4;</div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a30b3e624d81d69c2a3f1365692b6a1e9">   48</a></span>&#160;    uint8_t       :1;</div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a28863cfa136ed7014d8ca982d38a4539">   49</a></span>&#160;    uint8_t <a class="code" href="unionGoodweatherProtocol.html#a28863cfa136ed7014d8ca982d38a4539">Mode</a>  :3;</div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="unionGoodweatherProtocol.html#a426e1226b9b4427db41ab2b05ee6ed41">   50</a></span>&#160;    uint8_t       :0;</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;  };</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;};</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">// Constants</span></div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// Timing</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#acb9fb47b2a207997fda0244d1bafbe89">   56</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Goodweather_8h.html#acb9fb47b2a207997fda0244d1bafbe89">kGoodweatherBitMark</a> = 580;</div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a8efa251085a8f434cb91c049e65cda56">   57</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Goodweather_8h.html#a8efa251085a8f434cb91c049e65cda56">kGoodweatherOneSpace</a> = 580;</div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a411cbfb812d102daeaf6a83c742f9a9a">   58</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Goodweather_8h.html#a411cbfb812d102daeaf6a83c742f9a9a">kGoodweatherZeroSpace</a> = 1860;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a5c39e33226770babb4b0e89fc0cde709">   59</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Goodweather_8h.html#a5c39e33226770babb4b0e89fc0cde709">kGoodweatherHdrMark</a> = 6820;</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a837bfeaa111b00e2744c4ada89281bfb">   60</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Goodweather_8h.html#a837bfeaa111b00e2744c4ada89281bfb">kGoodweatherHdrSpace</a> = 6820;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#aae814dfbd574241d3b434d0bf2d38939">   61</a></span>&#160;<span class="keyword">const</span> uint8_t  <a class="code" href="ir__Goodweather_8h.html#aae814dfbd574241d3b434d0bf2d38939">kGoodweatherExtraTolerance</a> = 12;  <span class="comment">// +12% extra</span></div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">// Modes</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a2fc5f0f7d0f68dcff193548830f50528">   64</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a2fc5f0f7d0f68dcff193548830f50528">kGoodweatherAuto</a> = 0b000;</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a92c807d6ff8a3356e65f04e82b99aba4">   65</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a92c807d6ff8a3356e65f04e82b99aba4">kGoodweatherCool</a> = 0b001;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ac5174a3e2c64361c25adcf7caa5b714c">   66</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ac5174a3e2c64361c25adcf7caa5b714c">kGoodweatherDry</a> =  0b010;</div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ad56f00c7e39df93d28419d6a4afa360b">   67</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ad56f00c7e39df93d28419d6a4afa360b">kGoodweatherFan</a> =  0b011;</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a17d223f03df2718151a426582a224a2e">   68</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a17d223f03df2718151a426582a224a2e">kGoodweatherHeat</a> = 0b100;</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">// Swing</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a2d2fa76fa35cf7d450aaf0b980660514">   70</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a2d2fa76fa35cf7d450aaf0b980660514">kGoodweatherSwingFast</a> = 0b00;</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ad2c87d849af2c77088ffc533d279aadb">   71</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ad2c87d849af2c77088ffc533d279aadb">kGoodweatherSwingSlow</a> = 0b01;</div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#aa2c53f56daa2820351924d91b542bb67">   72</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#aa2c53f56daa2820351924d91b542bb67">kGoodweatherSwingOff</a> =  0b10;</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">// Fan Control</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a9cc119524ac1cb93395dff3bb44b85cc">   74</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a9cc119524ac1cb93395dff3bb44b85cc">kGoodweatherFanAuto</a> = 0b00;</div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#af2b24de50923a0aabd4379dc6d3ef10f">   75</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#af2b24de50923a0aabd4379dc6d3ef10f">kGoodweatherFanHigh</a> = 0b01;</div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a5174245e9369a488332b32dfa416963e">   76</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a5174245e9369a488332b32dfa416963e">kGoodweatherFanMed</a> =  0b10;</div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a7bc7c0cf9f2df574a7c087542991ab9b">   77</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a7bc7c0cf9f2df574a7c087542991ab9b">kGoodweatherFanLow</a> =  0b11;</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">// Temperature</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a8e76c0ec1bd5e124d9cee5742a2d1cfe">   79</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a8e76c0ec1bd5e124d9cee5742a2d1cfe">kGoodweatherTempMin</a> = 16;  <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#abec401548ce2221a9c668318a33a039c">   80</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#abec401548ce2221a9c668318a33a039c">kGoodweatherTempMax</a> = 31;  <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">// Commands</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a3f1bf85bb10343512bb276adfc64b3b2">   82</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a3f1bf85bb10343512bb276adfc64b3b2">kGoodweatherCmdPower</a>    = 0x00;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a6042296931ab29e9dfa5a701f3e42175">   83</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a6042296931ab29e9dfa5a701f3e42175">kGoodweatherCmdMode</a>     = 0x01;</div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a51a089b03bd72a247a4c35c2ff3f3dc6">   84</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a51a089b03bd72a247a4c35c2ff3f3dc6">kGoodweatherCmdUpTemp</a>   = 0x02;</div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a8a0b72bf745b6003fb460a3c917eecff">   85</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a8a0b72bf745b6003fb460a3c917eecff">kGoodweatherCmdDownTemp</a> = 0x03;</div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ab4ceedbe859811a9fb394f6ebf233cb5">   86</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ab4ceedbe859811a9fb394f6ebf233cb5">kGoodweatherCmdSwing</a>    = 0x04;</div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a4a0881f87af157fdf9ed3d9f342f1ac5">   87</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a4a0881f87af157fdf9ed3d9f342f1ac5">kGoodweatherCmdFan</a>      = 0x05;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ad4d247ea6c9fc237e0acda84fdaa2eb6">   88</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ad4d247ea6c9fc237e0acda84fdaa2eb6">kGoodweatherCmdTimer</a>    = 0x06;</div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#aa51248353573abd95af37e46f0a2c4a7">   89</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#aa51248353573abd95af37e46f0a2c4a7">kGoodweatherCmdAirFlow</a>  = 0x07;</div>
<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ac0f3b1413228cb7e86822c5690f20344">   90</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ac0f3b1413228cb7e86822c5690f20344">kGoodweatherCmdHold</a>     = 0x08;</div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a3f4d72b620c73aec68c2125430ca709d">   91</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#a3f4d72b620c73aec68c2125430ca709d">kGoodweatherCmdSleep</a>    = 0x09;</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#aebc6d53b3e7d1769bff47968c19c09c9">   92</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#aebc6d53b3e7d1769bff47968c19c09c9">kGoodweatherCmdTurbo</a>    = 0x0A;</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#ae70c4e66b17db9caf4800eb57a50706f">   93</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Goodweather_8h.html#ae70c4e66b17db9caf4800eb57a50706f">kGoodweatherCmdLight</a>    = 0x0B;</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">// PAD EOF</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="ir__Goodweather_8h.html#a5ec0e7ca097241d6bef0cbf2135c8fca">   95</a></span>&#160;<span class="keyword">const</span> uint64_t <a class="code" href="ir__Goodweather_8h.html#a5ec0e7ca097241d6bef0cbf2135c8fca">kGoodweatherStateInit</a>  = 0xD50000000000;</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment">// Classes</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classIRGoodweatherAc.html">  100</a></span>&#160;<span class="comment"></span><span class="keyword">class </span><a class="code" href="classIRGoodweatherAc.html">IRGoodweatherAc</a> {</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRGoodweatherAc.html#a681feff1a58125cde97b2d7ed0ba775e">IRGoodweatherAc</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                           <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#ae7f8873ad58e553dc89307220628bebf">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">#if SEND_GOODWEATHER</span></div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#abcc3c9d9b0912b09d3c0b0c1affb8cc8">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#a885bc5a3a5ba2d8827a62d07a43d0321">kGoodweatherMinRepeat</a>);</div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="classIRGoodweatherAc.html#a8a747144587cf38d64bb32a7f86432b3">  111</a></span>&#160;  int8_t <a class="code" href="classIRGoodweatherAc.html#a8a747144587cf38d64bb32a7f86432b3">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRGoodweatherAc.html#acf606eb9e024c99407138dbd058e98d9">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#endif  // SEND_GOODWEATHER</span></div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#abace3c8b25d4737a83fe33f94fc741d9">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a1e3c2a9f47376062ab66318d6af4324b">on</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#ad6863d837140951fcc0faf629025d48e">off</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#ac49e30082777b10fe9edf6ec7bd76ea5">setPower</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRGoodweatherAc.html#a1e3c2a9f47376062ab66318d6af4324b">on</a>);</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRGoodweatherAc.html#ac07f4c3c4e064a13f1f90d0c227d8ec0">getPower</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a8b1c90f69a3a2e412020d07809d180cc">setTemp</a>(<span class="keyword">const</span> uint8_t temp);</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  uint8_t <a class="code" href="classIRGoodweatherAc.html#a253e92453136f37c3082a5d492d45c82">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#af8cf9ba59af548677e586cd59e8a6cc2">setFan</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;  uint8_t <a class="code" href="classIRGoodweatherAc.html#a58839f0a332a1db1d808c608aa718031">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a8eed6b70b7b1c2e8a9620db7462e1fb5">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  uint8_t <a class="code" href="classIRGoodweatherAc.html#a7a33c367d8cb64ec85afc37bbdda3ab1">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a4d11a6885a5e7851e7c941b559159c35">setSwing</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  uint8_t <a class="code" href="classIRGoodweatherAc.html#a4112cccacc2f8ea30c7d8bdb068beae0">getSwing</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a30987629a159c5112649f0973895c9c1">setSleep</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> toggle);</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRGoodweatherAc.html#a17ddc9ee4e4200176ede62817ed7cb7f">getSleep</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a7827fc5a8f85b284c0121727dba34f11">setTurbo</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> toggle);</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRGoodweatherAc.html#a2f15a3c8063af85bc81f3a5f3bcacb5e">getTurbo</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a3f149ff426b236ba9f90659a6daf4a9c">setLight</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> toggle);</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRGoodweatherAc.html#addd2e3cb3824ce4ca8f15bee468b1a16">getLight</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a4e266f42b7a82c49208e2acc7813e07b">setCommand</a>(<span class="keyword">const</span> uint8_t cmd);</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;  uint8_t <a class="code" href="classIRGoodweatherAc.html#ac46149fab1211f16891ffe31fa55b1b8">getCommand</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;  uint64_t <a class="code" href="classIRGoodweatherAc.html#a82d973e562b2425e8823fbc7332c06de">getRaw</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRGoodweatherAc.html#a2eae4bbdb14fea9e3004d656f852df59">setRaw</a>(<span class="keyword">const</span> uint64_t state);</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRGoodweatherAc.html#aef14e2b6c220e556300d286922da1f54">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRGoodweatherAc.html#abb443826453a65e87f6dedddf2dd74d5">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRGoodweatherAc.html#a3b37c04fd9b60b63052d93374fc15d4f">convertSwingV</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> swingv);</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRGoodweatherAc.html#ab3bcd1354b715179f67499c28fb219fb">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRGoodweatherAc.html#aff899c76d5b808ee35c9f88c116b5dc4">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRGoodweatherAc.html#abaaa40915d93e8c6bd5dd49d8e02b510">toCommon</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRGoodweatherAc.html#a95b191495e9cf0c603b407d5e466661a">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classIRGoodweatherAc.html#acf606eb9e024c99407138dbd058e98d9">  146</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRGoodweatherAc.html#acf606eb9e024c99407138dbd058e98d9">_irsend</a>;  </div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  IRsendTest <a class="code" href="classIRGoodweatherAc.html#acf606eb9e024c99407138dbd058e98d9">_irsend</a>;  </div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">#endif  // UNIT_TEST</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classIRGoodweatherAc.html#a357e8f133b16a086c3100eb1e7b35279">  152</a></span>&#160;  <a class="code" href="unionGoodweatherProtocol.html">GoodweatherProtocol</a> <a class="code" href="classIRGoodweatherAc.html#a357e8f133b16a086c3100eb1e7b35279">_</a>;</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;};</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#endif  // IR_GOODWEATHER_H_</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="air__Goodweather_8h_html_ae70c4e66b17db9caf4800eb57a50706f"><div class="ttname"><a href="ir__Goodweather_8h.html#ae70c4e66b17db9caf4800eb57a50706f">kGoodweatherCmdLight</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdLight</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:93</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_ac3a2cf92410edd8ad11550f6aa051bac"><div class="ttname"><a href="unionGoodweatherProtocol.html#ac3a2cf92410edd8ad11550f6aa051bac">GoodweatherProtocol::Power</a></div><div class="ttdeci">uint8_t Power</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:41</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a8a0b72bf745b6003fb460a3c917eecff"><div class="ttname"><a href="ir__Goodweather_8h.html#a8a0b72bf745b6003fb460a3c917eecff">kGoodweatherCmdDownTemp</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdDownTemp</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:85</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_ad6863d837140951fcc0faf629025d48e"><div class="ttname"><a href="classIRGoodweatherAc.html#ad6863d837140951fcc0faf629025d48e">IRGoodweatherAc::off</a></div><div class="ttdeci">void off(void)</div><div class="ttdoc">Change the power setting to Off.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:95</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a1e3c2a9f47376062ab66318d6af4324b"><div class="ttname"><a href="classIRGoodweatherAc.html#a1e3c2a9f47376062ab66318d6af4324b">IRGoodweatherAc::on</a></div><div class="ttdeci">void on(void)</div><div class="ttdoc">Change the power setting to On.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:92</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a8efa251085a8f434cb91c049e65cda56"><div class="ttname"><a href="ir__Goodweather_8h.html#a8efa251085a8f434cb91c049e65cda56">kGoodweatherOneSpace</a></div><div class="ttdeci">const uint16_t kGoodweatherOneSpace</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:57</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_ae7f8873ad58e553dc89307220628bebf"><div class="ttname"><a href="classIRGoodweatherAc.html#ae7f8873ad58e553dc89307220628bebf">IRGoodweatherAc::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the internal state to a fixed known good state.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:70</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_ab5b363c97de0b9ea362335914202aa5d"><div class="ttname"><a href="unionGoodweatherProtocol.html#ab5b363c97de0b9ea362335914202aa5d">GoodweatherProtocol::Sleep</a></div><div class="ttdeci">uint8_t Sleep</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:40</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a8e76c0ec1bd5e124d9cee5742a2d1cfe"><div class="ttname"><a href="ir__Goodweather_8h.html#a8e76c0ec1bd5e124d9cee5742a2d1cfe">kGoodweatherTempMin</a></div><div class="ttdeci">const uint8_t kGoodweatherTempMin</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:79</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_acf606eb9e024c99407138dbd058e98d9"><div class="ttname"><a href="classIRGoodweatherAc.html#acf606eb9e024c99407138dbd058e98d9">IRGoodweatherAc::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:146</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a3f1bf85bb10343512bb276adfc64b3b2"><div class="ttname"><a href="ir__Goodweather_8h.html#a3f1bf85bb10343512bb276adfc64b3b2">kGoodweatherCmdPower</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdPower</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:82</div></div>
<div class="ttc" id="anamespacestdAc_html_ac07f224c7bb47cac55dd01f24770ef43"><div class="ttname"><a href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a></div><div class="ttdeci">swingv_t</div><div class="ttdoc">Common A/C settings for Vertical Swing.</div><div class="ttdef"><b>Definition:</b> IRsend.h:74</div></div>
<div class="ttc" id="air__Goodweather_8h_html_aa51248353573abd95af37e46f0a2c4a7"><div class="ttname"><a href="ir__Goodweather_8h.html#aa51248353573abd95af37e46f0a2c4a7">kGoodweatherCmdAirFlow</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdAirFlow</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:89</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a58839f0a332a1db1d808c608aa718031"><div class="ttname"><a href="classIRGoodweatherAc.html#a58839f0a332a1db1d808c608aa718031">IRGoodweatherAc::getFan</a></div><div class="ttdeci">uint8_t getFan(void) const</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:144</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html"><div class="ttname"><a href="unionGoodweatherProtocol.html">GoodweatherProtocol</a></div><div class="ttdoc">Native representation of a Goodweather A/C message.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:26</div></div>
<div class="ttc" id="anamespacestdAc_html_a8bb0dbf18fe69f639f4ac0b3ff133383"><div class="ttname"><a href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a></div><div class="ttdeci">fanspeed_t</div><div class="ttdoc">Common A/C settings for Fan Speeds.</div><div class="ttdef"><b>Definition:</b> IRsend.h:61</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_addd2e3cb3824ce4ca8f15bee468b1a16"><div class="ttname"><a href="classIRGoodweatherAc.html#addd2e3cb3824ce4ca8f15bee468b1a16">IRGoodweatherAc::getLight</a></div><div class="ttdeci">bool getLight(void) const</div><div class="ttdoc">Get the Light (LED) Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:180</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a7827fc5a8f85b284c0121727dba34f11"><div class="ttname"><a href="classIRGoodweatherAc.html#a7827fc5a8f85b284c0121727dba34f11">IRGoodweatherAc::setTurbo</a></div><div class="ttdeci">void setTurbo(const bool toggle)</div><div class="ttdoc">Set the Turbo Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:199</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a3f149ff426b236ba9f90659a6daf4a9c"><div class="ttname"><a href="classIRGoodweatherAc.html#a3f149ff426b236ba9f90659a6daf4a9c">IRGoodweatherAc::setLight</a></div><div class="ttdeci">void setLight(const bool toggle)</div><div class="ttdoc">Set the Light (LED) Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:173</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a253e92453136f37c3082a5d492d45c82"><div class="ttname"><a href="classIRGoodweatherAc.html#a253e92453136f37c3082a5d492d45c82">IRGoodweatherAc::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdoc">Get the current temperature setting.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:122</div></div>
<div class="ttc" id="aIRsend_8h_html"><div class="ttname"><a href="IRsend_8h.html">IRsend.h</a></div></div>
<div class="ttc" id="air__Goodweather_8h_html_ab4ceedbe859811a9fb394f6ebf233cb5"><div class="ttname"><a href="ir__Goodweather_8h.html#ab4ceedbe859811a9fb394f6ebf233cb5">kGoodweatherCmdSwing</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdSwing</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:86</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a5174245e9369a488332b32dfa416963e"><div class="ttname"><a href="ir__Goodweather_8h.html#a5174245e9369a488332b32dfa416963e">kGoodweatherFanMed</a></div><div class="ttdeci">const uint8_t kGoodweatherFanMed</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:76</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a3b37c04fd9b60b63052d93374fc15d4f"><div class="ttname"><a href="classIRGoodweatherAc.html#a3b37c04fd9b60b63052d93374fc15d4f">IRGoodweatherAc::convertSwingV</a></div><div class="ttdeci">static uint8_t convertSwingV(const stdAc::swingv_t swingv)</div><div class="ttdoc">Convert a stdAc::swingv_t enum into it's native setting.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:274</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a51a089b03bd72a247a4c35c2ff3f3dc6"><div class="ttname"><a href="ir__Goodweather_8h.html#a51a089b03bd72a247a4c35c2ff3f3dc6">kGoodweatherCmdUpTemp</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdUpTemp</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:84</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a837bfeaa111b00e2744c4ada89281bfb"><div class="ttname"><a href="ir__Goodweather_8h.html#a837bfeaa111b00e2744c4ada89281bfb">kGoodweatherHdrSpace</a></div><div class="ttdeci">const uint16_t kGoodweatherHdrSpace</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:60</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a8a747144587cf38d64bb32a7f86432b3"><div class="ttname"><a href="classIRGoodweatherAc.html#a8a747144587cf38d64bb32a7f86432b3">IRGoodweatherAc::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:111</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a007f6dd38f4e7137d08278355941885d"><div class="ttname"><a href="unionGoodweatherProtocol.html#a007f6dd38f4e7137d08278355941885d">GoodweatherProtocol::Turbo</a></div><div class="ttdeci">uint8_t Turbo</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:34</div></div>
<div class="ttc" id="aclassIRsend_html"><div class="ttname"><a href="classIRsend.html">IRsend</a></div><div class="ttdoc">Class for sending all basic IR protocols.</div><div class="ttdef"><b>Definition:</b> IRsend.h:237</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a9cc119524ac1cb93395dff3bb44b85cc"><div class="ttname"><a href="ir__Goodweather_8h.html#a9cc119524ac1cb93395dff3bb44b85cc">kGoodweatherFanAuto</a></div><div class="ttdeci">const uint8_t kGoodweatherFanAuto</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:74</div></div>
<div class="ttc" id="aclassIRsend_html_ad1776aa6c699f9eeca1eef9bb4fe355b"><div class="ttname"><a href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">IRsend::calibrate</a></div><div class="ttdeci">int8_t calibrate(uint16_t hz=38000U)</div><div class="ttdoc">Calculate &amp; set any offsets to account for execution times during sending.</div><div class="ttdef"><b>Definition:</b> IRsend.cpp:207</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a681feff1a58125cde97b2d7ed0ba775e"><div class="ttname"><a href="classIRGoodweatherAc.html#a681feff1a58125cde97b2d7ed0ba775e">IRGoodweatherAc::IRGoodweatherAc</a></div><div class="ttdeci">IRGoodweatherAc(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:65</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a411cbfb812d102daeaf6a83c742f9a9a"><div class="ttname"><a href="ir__Goodweather_8h.html#a411cbfb812d102daeaf6a83c742f9a9a">kGoodweatherZeroSpace</a></div><div class="ttdeci">const uint16_t kGoodweatherZeroSpace</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:58</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a2eae4bbdb14fea9e3004d656f852df59"><div class="ttname"><a href="classIRGoodweatherAc.html#a2eae4bbdb14fea9e3004d656f852df59">IRGoodweatherAc::setRaw</a></div><div class="ttdeci">void setRaw(const uint64_t state)</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:89</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a7a33c367d8cb64ec85afc37bbdda3ab1"><div class="ttname"><a href="classIRGoodweatherAc.html#a7a33c367d8cb64ec85afc37bbdda3ab1">IRGoodweatherAc::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:167</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a0a9be72f6b174f5bc4f4082f3afd93b1"><div class="ttname"><a href="unionGoodweatherProtocol.html#a0a9be72f6b174f5bc4f4082f3afd93b1">GoodweatherProtocol::Swing</a></div><div class="ttdeci">uint8_t Swing</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:42</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a2fc5f0f7d0f68dcff193548830f50528"><div class="ttname"><a href="ir__Goodweather_8h.html#a2fc5f0f7d0f68dcff193548830f50528">kGoodweatherAuto</a></div><div class="ttdeci">const uint8_t kGoodweatherAuto</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:64</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_afbeda3fd1bdc8c37d01bdf9f5c8274ff"><div class="ttname"><a href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a></div><div class="ttdeci">std::string String</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1521</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_abcc3c9d9b0912b09d3c0b0c1affb8cc8"><div class="ttname"><a href="classIRGoodweatherAc.html#abcc3c9d9b0912b09d3c0b0c1affb8cc8">IRGoodweatherAc::send</a></div><div class="ttdeci">void send(const uint16_t repeat=kGoodweatherMinRepeat)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:78</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_ab3bcd1354b715179f67499c28fb219fb"><div class="ttname"><a href="classIRGoodweatherAc.html#ab3bcd1354b715179f67499c28fb219fb">IRGoodweatherAc::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:289</div></div>
<div class="ttc" id="air__Goodweather_8h_html_aae814dfbd574241d3b434d0bf2d38939"><div class="ttname"><a href="ir__Goodweather_8h.html#aae814dfbd574241d3b434d0bf2d38939">kGoodweatherExtraTolerance</a></div><div class="ttdeci">const uint8_t kGoodweatherExtraTolerance</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:61</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_ac46149fab1211f16891ffe31fa55b1b8"><div class="ttname"><a href="classIRGoodweatherAc.html#ac46149fab1211f16891ffe31fa55b1b8">IRGoodweatherAc::getCommand</a></div><div class="ttdeci">uint8_t getCommand(void) const</div><div class="ttdoc">Get the Command type/button pressed from the current settings.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:240</div></div>
<div class="ttc" id="air__Goodweather_8h_html_ad2c87d849af2c77088ffc533d279aadb"><div class="ttname"><a href="ir__Goodweather_8h.html#ad2c87d849af2c77088ffc533d279aadb">kGoodweatherSwingSlow</a></div><div class="ttdeci">const uint8_t kGoodweatherSwingSlow</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:71</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html"><div class="ttname"><a href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a></div></div>
<div class="ttc" id="air__Goodweather_8h_html_aa2c53f56daa2820351924d91b542bb67"><div class="ttname"><a href="ir__Goodweather_8h.html#aa2c53f56daa2820351924d91b542bb67">kGoodweatherSwingOff</a></div><div class="ttdeci">const uint8_t kGoodweatherSwingOff</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:72</div></div>
<div class="ttc" id="air__Goodweather_8h_html_ac5174a3e2c64361c25adcf7caa5b714c"><div class="ttname"><a href="ir__Goodweather_8h.html#ac5174a3e2c64361c25adcf7caa5b714c">kGoodweatherDry</a></div><div class="ttdeci">const uint8_t kGoodweatherDry</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:66</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a4112cccacc2f8ea30c7d8bdb068beae0"><div class="ttname"><a href="classIRGoodweatherAc.html#a4112cccacc2f8ea30c7d8bdb068beae0">IRGoodweatherAc::getSwing</a></div><div class="ttdeci">uint8_t getSwing(void) const</div><div class="ttdoc">Get the Vertical Swing speed of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:227</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a2d2fa76fa35cf7d450aaf0b980660514"><div class="ttname"><a href="ir__Goodweather_8h.html#a2d2fa76fa35cf7d450aaf0b980660514">kGoodweatherSwingFast</a></div><div class="ttdeci">const uint8_t kGoodweatherSwingFast</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:70</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a3f4d72b620c73aec68c2125430ca709d"><div class="ttname"><a href="ir__Goodweather_8h.html#a3f4d72b620c73aec68c2125430ca709d">kGoodweatherCmdSleep</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdSleep</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:91</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_abaaa40915d93e8c6bd5dd49d8e02b510"><div class="ttname"><a href="classIRGoodweatherAc.html#abaaa40915d93e8c6bd5dd49d8e02b510">IRGoodweatherAc::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(void) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:313</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a92c807d6ff8a3356e65f04e82b99aba4"><div class="ttname"><a href="ir__Goodweather_8h.html#a92c807d6ff8a3356e65f04e82b99aba4">kGoodweatherCool</a></div><div class="ttdeci">const uint8_t kGoodweatherCool</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:65</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a8b1c90f69a3a2e412020d07809d180cc"><div class="ttname"><a href="classIRGoodweatherAc.html#a8b1c90f69a3a2e412020d07809d180cc">IRGoodweatherAc::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:112</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_abace3c8b25d4737a83fe33f94fc741d9"><div class="ttname"><a href="classIRGoodweatherAc.html#abace3c8b25d4737a83fe33f94fc741d9">IRGoodweatherAc::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:73</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a4a0881f87af157fdf9ed3d9f342f1ac5"><div class="ttname"><a href="ir__Goodweather_8h.html#a4a0881f87af157fdf9ed3d9f342f1ac5">kGoodweatherCmdFan</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdFan</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:87</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_ac07f4c3c4e064a13f1f90d0c227d8ec0"><div class="ttname"><a href="classIRGoodweatherAc.html#ac07f4c3c4e064a13f1f90d0c227d8ec0">IRGoodweatherAc::getPower</a></div><div class="ttdeci">bool getPower(void) const</div><div class="ttdoc">Get the value of the current power setting.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:106</div></div>
<div class="ttc" id="air__Goodweather_8h_html_ac0f3b1413228cb7e86822c5690f20344"><div class="ttname"><a href="ir__Goodweather_8h.html#ac0f3b1413228cb7e86822c5690f20344">kGoodweatherCmdHold</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdHold</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:90</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a28863cfa136ed7014d8ca982d38a4539"><div class="ttname"><a href="unionGoodweatherProtocol.html#a28863cfa136ed7014d8ca982d38a4539">GoodweatherProtocol::Mode</a></div><div class="ttdeci">uint8_t Mode</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:49</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a4d11a6885a5e7851e7c941b559159c35"><div class="ttname"><a href="classIRGoodweatherAc.html#a4d11a6885a5e7851e7c941b559159c35">IRGoodweatherAc::setSwing</a></div><div class="ttdeci">void setSwing(const uint8_t speed)</div><div class="ttdoc">Set the Vertical Swing speed of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:212</div></div>
<div class="ttc" id="air__Goodweather_8h_html_ad56f00c7e39df93d28419d6a4afa360b"><div class="ttname"><a href="ir__Goodweather_8h.html#ad56f00c7e39df93d28419d6a4afa360b">kGoodweatherFan</a></div><div class="ttdeci">const uint8_t kGoodweatherFan</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:67</div></div>
<div class="ttc" id="air__Goodweather_8h_html_aebc6d53b3e7d1769bff47968c19c09c9"><div class="ttname"><a href="ir__Goodweather_8h.html#aebc6d53b3e7d1769bff47968c19c09c9">kGoodweatherCmdTurbo</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdTurbo</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:92</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a4e266f42b7a82c49208e2acc7813e07b"><div class="ttname"><a href="classIRGoodweatherAc.html#a4e266f42b7a82c49208e2acc7813e07b">IRGoodweatherAc::setCommand</a></div><div class="ttdeci">void setCommand(const uint8_t cmd)</div><div class="ttdoc">Set the remote Command type/button pressed.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:233</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a845565af7661af0c05290a7ce039f8e2"><div class="ttname"><a href="unionGoodweatherProtocol.html#a845565af7661af0c05290a7ce039f8e2">GoodweatherProtocol::Light</a></div><div class="ttdeci">uint8_t Light</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:32</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_acaa336e2b9915da4dfb51e4738af9265"><div class="ttname"><a href="unionGoodweatherProtocol.html#acaa336e2b9915da4dfb51e4738af9265">GoodweatherProtocol::Command</a></div><div class="ttdeci">uint8_t Command</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:37</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a5ec0e7ca097241d6bef0cbf2135c8fca"><div class="ttname"><a href="ir__Goodweather_8h.html#a5ec0e7ca097241d6bef0cbf2135c8fca">kGoodweatherStateInit</a></div><div class="ttdeci">const uint64_t kGoodweatherStateInit</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:95</div></div>
<div class="ttc" id="air__Goodweather_8h_html_ad4d247ea6c9fc237e0acda84fdaa2eb6"><div class="ttname"><a href="ir__Goodweather_8h.html#ad4d247ea6c9fc237e0acda84fdaa2eb6">kGoodweatherCmdTimer</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdTimer</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:88</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a52cc284981b27dab58eb8c6ccce164aa"><div class="ttname"><a href="unionGoodweatherProtocol.html#a52cc284981b27dab58eb8c6ccce164aa">GoodweatherProtocol::Temp</a></div><div class="ttdeci">uint8_t Temp</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:47</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a8eed6b70b7b1c2e8a9620db7462e1fb5"><div class="ttname"><a href="classIRGoodweatherAc.html#a8eed6b70b7b1c2e8a9620db7462e1fb5">IRGoodweatherAc::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:150</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a95b191495e9cf0c603b407d5e466661a"><div class="ttname"><a href="classIRGoodweatherAc.html#a95b191495e9cf0c603b407d5e466661a">IRGoodweatherAc::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:340</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a2f15a3c8063af85bc81f3a5f3bcacb5e"><div class="ttname"><a href="classIRGoodweatherAc.html#a2f15a3c8063af85bc81f3a5f3bcacb5e">IRGoodweatherAc::getTurbo</a></div><div class="ttdeci">bool getTurbo(void) const</div><div class="ttdoc">Get the Turbo Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:206</div></div>
<div class="ttc" id="air__Goodweather_8h_html_abec401548ce2221a9c668318a33a039c"><div class="ttname"><a href="ir__Goodweather_8h.html#abec401548ce2221a9c668318a33a039c">kGoodweatherTempMax</a></div><div class="ttdeci">const uint8_t kGoodweatherTempMax</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:80</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_aff899c76d5b808ee35c9f88c116b5dc4"><div class="ttname"><a href="classIRGoodweatherAc.html#aff899c76d5b808ee35c9f88c116b5dc4">IRGoodweatherAc::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:302</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a7bc7c0cf9f2df574a7c087542991ab9b"><div class="ttname"><a href="ir__Goodweather_8h.html#a7bc7c0cf9f2df574a7c087542991ab9b">kGoodweatherFanLow</a></div><div class="ttdeci">const uint8_t kGoodweatherFanLow</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:77</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_af8cf9ba59af548677e586cd59e8a6cc2"><div class="ttname"><a href="classIRGoodweatherAc.html#af8cf9ba59af548677e586cd59e8a6cc2">IRGoodweatherAc::setFan</a></div><div class="ttdeci">void setFan(const uint8_t speed)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:128</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a17d223f03df2718151a426582a224a2e"><div class="ttname"><a href="ir__Goodweather_8h.html#a17d223f03df2718151a426582a224a2e">kGoodweatherHeat</a></div><div class="ttdeci">const uint8_t kGoodweatherHeat</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:68</div></div>
<div class="ttc" id="air__Goodweather_8h_html_acb9fb47b2a207997fda0244d1bafbe89"><div class="ttname"><a href="ir__Goodweather_8h.html#acb9fb47b2a207997fda0244d1bafbe89">kGoodweatherBitMark</a></div><div class="ttdeci">const uint16_t kGoodweatherBitMark</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:56</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a17ddc9ee4e4200176ede62817ed7cb7f"><div class="ttname"><a href="classIRGoodweatherAc.html#a17ddc9ee4e4200176ede62817ed7cb7f">IRGoodweatherAc::getSleep</a></div><div class="ttdeci">bool getSleep(void) const</div><div class="ttdoc">Get the Sleep Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:193</div></div>
<div class="ttc" id="air__Goodweather_8h_html_af2b24de50923a0aabd4379dc6d3ef10f"><div class="ttname"><a href="ir__Goodweather_8h.html#af2b24de50923a0aabd4379dc6d3ef10f">kGoodweatherFanHigh</a></div><div class="ttdeci">const uint8_t kGoodweatherFanHigh</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:75</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_abb443826453a65e87f6dedddf2dd74d5"><div class="ttname"><a href="classIRGoodweatherAc.html#abb443826453a65e87f6dedddf2dd74d5">IRGoodweatherAc::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:260</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_aef14e2b6c220e556300d286922da1f54"><div class="ttname"><a href="classIRGoodweatherAc.html#aef14e2b6c220e556300d286922da1f54">IRGoodweatherAc::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:247</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_aea5a3a02cea21af0f42b63b7145709c9"><div class="ttname"><a href="unionGoodweatherProtocol.html#aea5a3a02cea21af0f42b63b7145709c9">GoodweatherProtocol::raw</a></div><div class="ttdeci">uint64_t raw</div><div class="ttdoc">The state of the IR remote in IR code form.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:27</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a5c39e33226770babb4b0e89fc0cde709"><div class="ttname"><a href="ir__Goodweather_8h.html#a5c39e33226770babb4b0e89fc0cde709">kGoodweatherHdrMark</a></div><div class="ttdeci">const uint16_t kGoodweatherHdrMark</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:59</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a7b876552a27a7a9bf84b1009f7b12f7a"><div class="ttname"><a href="unionGoodweatherProtocol.html#a7b876552a27a7a9bf84b1009f7b12f7a">GoodweatherProtocol::AirFlow</a></div><div class="ttdeci">uint8_t AirFlow</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:43</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_ac49e30082777b10fe9edf6ec7bd76ea5"><div class="ttname"><a href="classIRGoodweatherAc.html#ac49e30082777b10fe9edf6ec7bd76ea5">IRGoodweatherAc::setPower</a></div><div class="ttdeci">void setPower(const bool on)</div><div class="ttdoc">Change the power setting.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:99</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a30987629a159c5112649f0973895c9c1"><div class="ttname"><a href="classIRGoodweatherAc.html#a30987629a159c5112649f0973895c9c1">IRGoodweatherAc::setSleep</a></div><div class="ttdeci">void setSleep(const bool toggle)</div><div class="ttdoc">Set the Sleep Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:186</div></div>
<div class="ttc" id="astructstdAc_1_1state__t_html"><div class="ttname"><a href="structstdAc_1_1state__t.html">stdAc::state_t</a></div><div class="ttdoc">Structure to hold a common A/C state.</div><div class="ttdef"><b>Definition:</b> IRsend.h:114</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html"><div class="ttname"><a href="classIRGoodweatherAc.html">IRGoodweatherAc</a></div><div class="ttdoc">Class for handling detailed Goodweather A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:100</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a357e8f133b16a086c3100eb1e7b35279"><div class="ttname"><a href="classIRGoodweatherAc.html#a357e8f133b16a086c3100eb1e7b35279">IRGoodweatherAc::_</a></div><div class="ttdeci">GoodweatherProtocol _</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:152</div></div>
<div class="ttc" id="aunionGoodweatherProtocol_html_a7dd02188438a4e2b37c70a2b3913e550"><div class="ttname"><a href="unionGoodweatherProtocol.html#a7dd02188438a4e2b37c70a2b3913e550">GoodweatherProtocol::Fan</a></div><div class="ttdeci">uint8_t Fan</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:44</div></div>
<div class="ttc" id="aclassIRGoodweatherAc_html_a82d973e562b2425e8823fbc7332c06de"><div class="ttname"><a href="classIRGoodweatherAc.html#a82d973e562b2425e8823fbc7332c06de">IRGoodweatherAc::getRaw</a></div><div class="ttdeci">uint64_t getRaw(void)</div><div class="ttdoc">Get a copy of the internal state as a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.cpp:85</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a885bc5a3a5ba2d8827a62d07a43d0321"><div class="ttname"><a href="IRremoteESP8266_8h.html#a885bc5a3a5ba2d8827a62d07a43d0321">kGoodweatherMinRepeat</a></div><div class="ttdeci">const uint16_t kGoodweatherMinRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1247</div></div>
<div class="ttc" id="air__Goodweather_8h_html_a6042296931ab29e9dfa5a701f3e42175"><div class="ttname"><a href="ir__Goodweather_8h.html#a6042296931ab29e9dfa5a701f3e42175">kGoodweatherCmdMode</a></div><div class="ttdeci">const uint8_t kGoodweatherCmdMode</div><div class="ttdef"><b>Definition:</b> ir_Goodweather.h:83</div></div>
<div class="ttc" id="anamespacestdAc_html_a99ad268c783486f9b3207cb78f48444f"><div class="ttname"><a href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a></div><div class="ttdeci">opmode_t</div><div class="ttdoc">Common A/C settings for A/C operating modes.</div><div class="ttdef"><b>Definition:</b> IRsend.h:49</div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
